package org.k.GUI.explorer;
//package com.gui;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;


/**
 * 功能：桌面图形界面框架
 * 日期：2012.26
 * 作者：k
 */
/*===============================================================================
未解决问题：

2、记事窗口过大
/===============================================================================*/
public class From_Main extends JFrame {
	//定义组件
	JSplitPane jspZuo,jspShang,jspXia,jspZhongYou;//拆分窗格控件（容器类）
	
	JFrame jf1;//用于设置网格布局
	JPanel jpShang,jpXia,jpZuo,jpYou,jpZhong;
	
	public static void main(String[] args) {
		From_Main gui=new From_Main();
	}
	private void preferences(){
		
		//========================================获得当前分辨率========================
		GraphicsEnvironment ge =GraphicsEnvironment.getLocalGraphicsEnvironment();
		GraphicsDevice[] gs=ge.getScreenDevices();
		DisplayMode dm =gs[0].getDisplayMode();
		//==============================================================================
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 设定窗体关闭后自动退出进程
		setSize(dm.getWidth(),dm.getHeight());//使用系统当前分辨率初始化窗体
		setVisible(true);// 显示窗体
		/////////////////////////////////////////////////////////////////////////////////
		jspXia.setDividerLocation(0.7);// 设定分割面板的左右比例(这时候就生效了，如果放在setVisible(true)这据之前就不会有效果。)
		//jspZhongYou.setDividerLocation(1.0d);
		jspZuo.setDividerLocation(0.1);
		jspShang.setDividerLocation(0.05);

		
		/***** 初始化事件 ***/
		this.addComponentListener(new ComponentAdapter() {
		
			public void componentResized(ComponentEvent e) {
				jspXia.setDividerLocation(0.7);// 设定分割面板的左右比例(这时候就生效了，如果放在setVisible(true)这据之前就不会有效果。)
				//jspZhongYou.setDividerLocation(1.0d);
				jspZuo.setDividerLocation(0.1);
				jspShang.setDividerLocation(0.05);
				//////////////////////////////重叠至右边////////////////////////////////////
				jspZhongYou.getLeftComponent().setMaximumSize(new Dimension());
				jspZhongYou.setDividerLocation(1.0d);
				///////////////////////////////////////////////////////////////////////////
			}
		});
		
	}
	
	
	//窗体显示
	Window win=new Window(new JPanel(),new JPanel(),new JPanel());
	private void jbInit() throws Exception {
		jspZhongYou=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,new JButton("中心展框"),jpYou);
		jspXia=new JSplitPane(JSplitPane.VERTICAL_SPLIT,jspZhongYou,jpXia);
		jspZuo=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,new JButton("左按钮"),jspXia);	//拆分窗体
		jspShang=new JSplitPane(JSplitPane.VERTICAL_SPLIT,win,jspZuo);
		
		jspZhongYou.setOneTouchExpandable(true);//可以收缩
		jspXia.setOneTouchExpandable(true);//可以收缩
		jspZuo.setOneTouchExpandable(true);//可以收缩
		jspShang.setOneTouchExpandable(true);//可以收缩
		//添加组件
		this.add(jspShang);
	}
	public From_Main(){
		//////////////////////////////////////////////////////////////////////
		jpYou=new Notbook();
		jpXia=new Cmd();
		//////////////////////////////////////////////////////////////////////
		
		try {
			jbInit();
			preferences();//设置所有控件的初始化
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

}
